/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.seguradora.service;

import br.com.seguradora.model.repository.impl.RepositoryFactoryImpl;
import br.com.seguradora.model.repository.RepositoryFactory;
import br.com.seguradora.exception.PersistenciaException;
import br.com.seguradora.model.Grupo;
import br.com.seguradora.model.repository.TodosGrupos;
import br.com.seguradora.view.DisplayFilter;
import java.util.List;

/**
 *
 * @author Diego
 */
public class GrupoService {

    private TodosGrupos todosGrupos;

    public GrupoService() {
        RepositoryFactory repositoryFactory = new RepositoryFactoryImpl();
        todosGrupos = repositoryFactory.createGrupoRepository();
    }

    public boolean inserir(Grupo grupo) throws PersistenciaException {
        return todosGrupos.inserir(grupo);
    }

    public boolean atualizar(Grupo grupo) throws PersistenciaException {
        return todosGrupos.atualizar(grupo);
    }

    public boolean excluir(Grupo grupo) throws PersistenciaException {
        return todosGrupos.excluir(grupo);
    }

    public List<Grupo> listarTodos() throws PersistenciaException {
        return todosGrupos.listarTodos();
    }
    
    public List<Grupo> listarPeloNome(String nome, DisplayFilter displayFilter) throws PersistenciaException {
        return todosGrupos.listarPeloNome(nome, displayFilter);
    }
    
    public List<Grupo> listarDesbloqueados() throws PersistenciaException {
        return todosGrupos.listarDesbloqueados();
    }
}
